As network devices are developed, they are tested before they are released for public use. This ensures performance of the network devices prior to deployment so that erroneous transmissions and fatal errors are minimized. Parameters that are monitored when network devices are tested include routing verification, achievement of Quality of Service (QoS) levels under load, and correct interworking with other devices. The implementation of protocols used to transmit data or control information over communications networks are also tested to ensure correct operation.
Networks and network devices are tested by simulating network traffic using specifically created “test packets” of data that are typical of the live data present on the network. These test packets are then transmitted to the device or network under test. For the sake of convenience, the word “network” will hereinafter in the description and claims be used to refer to any one or more of: a communication network, a network device, any other communication device, and any aspect or aspects of a communication system which can be tested using test packets of data.
Test packets are built according to the rules and interpretations of communications protocols, such as those defined by the many standards bodies in the industry. There are many communications protocols in use and new protocols continue to be developed. Typically, new protocols are initially developed by equipment manufacturers and are proprietary in nature. Often, the protocols are subsequently adopted by standards bodies for widespread implementation in industry.
It is beneficial for a test device used to test networks to be able to construct test packets that accommodate a wide range of existing protocols. Furthermore, users of such test devices often demand that the test device have the flexibility to construct test packets for future-developed protocols not available at the time of the development of the test device.
However, this demand causes manufacturers of the test devices to continually add support for new protocols to the test devices, by coding rules and interpretations of the new protocols into the software used to construct test packets. This work usually requires specialist programming and networking knowledge and skills, and may take a period of months to complete. Such work can consume significant development resources of the test device manufacturer, making it difficult for the manufacturer of the test devices to meet the demands of the user in a timely fashion.